Declarative Debugging in Constraint Logic Programming
نویسنده
چکیده
This paper is motivated by the declarative insuuciency diagnosis of constraint logic programs, but focuses only on theoretical viewpoints. Many techniques have been developed for logic programming but cannot be merely adapted to constraint logic programming. Constraint logic program semantics is redeened in terms of proof trees using a cover relation. Proof trees give an intrinsic deenition to the answers provided by a program. The cover relation expresses that a constraint is covered by a (possibly innnite) constraint set. Thus we give a theoretical framework where declarative diagnosis method can be studied thanks to the inductive nature of the semantics. We deene the notions of symptoms and errors and we prove that if there exists a symptom then there exists an error.
منابع مشابه
Declarative Debugging of Missing Answers in Constraint Functional-Logic Programming
It is well known that constraint logic and functional-logic programming languages have many advantages, and there is a growing trend to develop and incorporate effective tools to this class of declarative languages. In particular, debugging tools are a practical need for diagnosing the causes of erroneous computations. Recently [1], we have presented a prototype tool for the declarative diagnos...
متن کاملDeclarative Diagnosis of Floundering
Many logic programming languages have delay primitives which allow coroutining. This introduces a class of bug symptoms — computations can flounder when they are intended to succeed or finitely fail. For concurrent logic programs this is normally called deadlock. Similarly, constraint logic programs can fail to invoke certain constraint solvers because variables are insufficiently instantiated ...
متن کاملDeclarative Diagnosis of Wrong Answers in Constraint Functional-Logic Programming
Debugging tools are a practical need for diagnosing the causes of erroneous computations. Declarative programming paradigms involving complex operational details, such as constraint solving and lazy evaluation, do not fit well to traditional debugging techniques relying on the inspection of low-level computation traces. As a solution to this problem, declarative diagnosis uses Computation Trees...
متن کاملDeclarative Debugging in Constraint Logic Programming: the Cover Relation
This work is motivated by the declarative insuuciency diagnosis of constraint logic programs, but focuses only, in this paper, on theoretical viewpoints. Many techniques have been developed for logic programming but cannot be merely adapted to constraint logic programming. An answer is not covered by a more general computed answer any more. Practical implementations use incomplete solvers with ...
متن کاملSlicing of Constraint Logic Programs
Abstract. Slicing is a program analysis technique originally developed for imperative languages. It facilitates understanding of data flow and debugging. This paper discusses slicing of Constraint Logic Programs. Constraint Logic Programming (CLP) is an emerging software technology with a growing number of applications. Data flow in constraint programs is not explicit, and for this reason the c...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1996